package com.jmu.posms.util;

import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.time.DateFormatUtils;
import org.apache.commons.lang3.time.DateUtils;

import java.text.ParseException;
import java.util.Date;

@Slf4j
/**
 * 日期工具类
 * 继承了lang3的DateUtils ， 可以调用工具直接进行 Date的时间的增加与减少
 * 方法主要是为了获取已经转换的时间的格式的当前时间，
 * 以及从数据库取出时间的字符串后，要增加时间等，需要转换成date类
 */
public class DateUtil extends DateUtils {
    /**
     * 日期格式
     */
    private static final String pattern = "yyyy-MM-dd HH:mm:ss";
    private static final String LOG_FILENAME_DATE_FORMAT = "yyyy-MM-dd";

    /**
     * 获取当前的时间的字符串的格式
     *
     * @return
     */
    public static String getDate() {
        Date date = new Date();
        return DateFormatUtils.format(date, pattern);
    }

    /**
     * 将日期的字符串转换为日期类
     * @param date
     * @return
     */
    public static Date toDate(String date) {
        try {
            return DateUtils.parseDate(date, pattern);
        } catch (ParseException e) {
            log.info("字符转换日期失败！");
        }
        return null;
    }

    public static String getDateXlsFilename() {
        return DateFormatUtils.format(new Date(), LOG_FILENAME_DATE_FORMAT);
    }


}
